<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<!-- 
什么是数据代理机制？
    1.通过访问代理对象的属性来间接访问目标对象的属性
    2.数据代理机制的实现就是靠Object.defineProperty()方法
    
    ES6新特性
    在对象中的函数/方法：functon是可以省略的
    

-->
<body>
    <script>
        /* 目标对象 */
        let target={
            name:"zhangsan",
        }
        /* 代理对象 */
        let proxy={}

        Object.defineProperty(proxy,'name',{
            get(){
                console.log("get name");
                return target.name
            },
            set(newValue){
                console.log("set name");
                target.name=newValue
            }
        })
    </script>
</body>
</html>